package main

import "fmt"

//给定一个排序数组，你需要在 原地 删除重复出现的元素，使得每个元素只出现一次，返回移除后数组的新长度。
//不要使用额外的数组空间，你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。

// 思路
// 利用双指针法来解决问题

func removeDuplicates(nums []int) int {
    	second :=0
    	// 指定位置定义
		for i:=0;i<len(nums);i++{
			if nums[second] != nums[i] {
				second++
				nums[second] = nums[i]
			}
		}
		return second+1
}
func main(){
	nums:=[]int{0,0,1,1,1,2,2,3,3,4}
	fmt.Println(removeDuplicates(nums))
	nums1:=[]int{3,2,2,3}
	fmt.Println(removeElement(nums1,3))
}